package br.com.calculadora.formula.selecionar;

import android.util.Log;

public class SelecionarFormulaAceleracao extends SelecionarFormulaAbstract {

	private final String TAG = SelecionarFormulaAceleracao.class.getSimpleName();
	
	@Override
	public void selecionarFormula() {
		resultado = true;
		
		// F = M * A (FUNCIONA)
		if (resultado){
			if (verificarCampos.isCampoForca(bean) && verificarCampos.isCampoMassa(bean)){
				Log.i(TAG, "F = M * A");
				calcularAceleracao.calcularAceleracao1();
				resultado = false;
			}
		}
		
		// V = V0 + A * T (FUNCIONA)
		if (resultado){
			if (verificarCampos.isCampoVelocidadeFinal(bean) && verificarCampos.isCampoVelocidadeInicial(bean) && verificarCampos.isCampoTempo(bean)){
				Log.i(TAG, "V = V0 + A * T");
				calcularAceleracao.calcularAceleracao3();
				resultado = false;					
			}
		}
		
		// V^V = V0^V0 + 2 * A * S (FUNCIONA)
		if (resultado){
			if (verificarCampos.isCampoDeslocamento(bean) && verificarCampos.isCampoVelocidadeFinal(bean) && verificarCampos.isCampoVelocidadeInicial(bean)){
				Log.i(TAG, "V^V = V0^V0 + 2 * A * S");
				calcularAceleracao.calcularAceleracao4();
				resultado = false;
			}			
		}
		
		// F - FAT = M * A (FUNCIONA)
		if (resultado){
			if (verificarCampos.isCampoForca(bean) && verificarCampos.isCampoForcaDeAtrito(bean) && verificarCampos.isCampoMassa(bean)){
				Log.i(TAG, "F - FAT = M * A");
				calcularAceleracao.calcularAceleracao1();
				resultado = false;
			}
		}
		
		// - FAT = M * A (FALTA ESSE)
		if (resultado){
			if (verificarCampos.isCampoForcaDeAtrito(bean) && verificarCampos.isCampoMassa(bean)){
				Log.i(TAG, "- FAT = M * A");
				// calcularAceleracao.calcularAceleracao5(bean);
				resultado = false;
			}
		}
		
		// S = S0 + V0 + (A*T^T)/2 (FALTA TESTAR)
		if (resultado){
			if (verificarCampos.isCampoDeslocamentoInicial(bean) && verificarCampos.isCampoDeslocamentoFinal(bean) && verificarCampos.isCampoVelocidadeInicial(bean) && verificarCampos.isCampoTempo(bean)){
				Log.i(TAG, "S = S0 + V0 + (A*T^T)/2");
				calcularAceleracao.calcularAceleracao2();
				resultado = false;
			}
		}
		
//		// ANALISA OS DADOS INCOMPLETOS
//		if (resultado){
//			AnalisarDadosAusentesAceleracao dadosAusentes = new AnalisarDadosAusentesAceleracao();
//			if (!dadosAusentes.analisarAceleracao(bean)){
//				return;
//			}
//		}	
	}		
}
